小地图配置
小地图配置分为两个部分:MiniMapTemplate配置
、MiniMap脚本配置
地图目录
MiniMapTemplate
相关文件放置在地图目录中game_hud
目录下,其中包含文件:
MiniMapTemplate.json
:小地图基本信息配置,如果没有MiniMap脚本配置
,则默认在左上角,且不方便做个性化UI调整。
miniMap.png
:小地图图集,通过打包图集工具生成。
miniMap.json
:小地图图集信息文件,通过打包图集工具生成。
miniMap目录
:在game_hud
下的子目录,如果没有打包图集则读取该目录资源,其中小地图icon
、地图底图
放置在该目录下。
MiniMapTemplate配置
{
"Scale": [ 1, 1 ], // xy缩放比,通常不变
"Templates": [ // 小地图样式组,可以配置多个样式,用于多地图游戏
{
"TemplateName": "MiniMap_1", // 小地图样式名称,也是场景目录名称
"Anchor": [ 0, 0 ],
"Layout": [
{
"Name": "MainMiniMap", // 固定格式
"Type": "MINIMAP", // 固定格式
"Rect": [ 0, 0, 256, 256 ],
"Color": [ 255, 255, 255, 255 ], // 小地图颜色
"MapSize": [5120, 5120], // 地图场景大小
"TexturePath": "game_hud/miniMap/minimap_1.png" // 图片资源路径
}
]
},
{
"TemplateName": "MiniMap_2",
"Anchor": [ 0, 0 ],
"Layout": [
{
"Name": "MainMiniMap",
"Type": "MINIMAP",
"Rect": [ 0, 0, 256, 256 ],
"Color": [ 255, 255, 255, 255 ],
"MapSize": [5120, 5120],
"TexturePath": "game_hud/miniMap/minimap_2.png"
}
]
}
]
}
MiniMap脚本配置
程序提供了个特殊的控件base.ui.minimap_canvas{}
,可以用来影响到MiniMapTemplate
该控件用于客户端的lua脚本中,具体如何改变此控件的大小和位置请参考客户端文档
local minimap = base.ui.minimap_canvas {
-- 需要绑定的单位,绑定后就以单位为小地图中心,默认为nil
follow_target_id = 1,
-- 场景地图和小地图的像素比,用于绑定单位时地图滚动,默认为0
map_ratio = 10,
layout = {
-- 像普通控件一样定制排版信息,可以操作minimap_template在游戏中的显示方式
...
},
base.ui.panel{
-- 像普通控件一样添加children,或者被其他控件嵌套,这样可以定制特殊的功能
...
},
}
-- 生成UI
local ui , bind = base.ui.create(minimap)
支持的独特属性
- follow_target_id 需要跟随的单位id
- map_ratio 一个设计像素对应的场景大小
若没有follow_target_id
或map_ratio
==0, 则显示整张地图